#ifndef ALIEN_ATTACK_STATEPARSER_H
#define ALIEN_ATTACK_STATEPARSER_H

#include <tinyxml.h>
#include <iostream>
#include <vector>

struct GameObject;

struct StateParser
{
    StateParser() {}
    ~StateParser() {}

    bool parseState(const char *stateFile,
                    std::string stateID,
                    std::vector<GameObject *> *pObjects,
                    std::vector<std::string> *pTextureIDs);

private:
    void parseObject(TiXmlElement *pStateRoot,
                     std::vector<GameObject *> *pObjects);
    void parseTextures(TiXmlElement *pStateRoot,
                       std::vector<std::string> *pTextureIDs);
};

#endif // header file protect